<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <script>
    // forEach方法
    // 循环数组
    // 接受一个函数作为参数, 函数又可以接受一个item的形参
    // let arr = ["a", "b", "c", "d", "e"];
    // arr.forEach((item, index) => {
    //   console.log(item);
    // })






    // map方法
    // 做数组映射
    // 数组长度是不变的
    // 都是以相同的规则进行转换
    // 函数里面必须要有return
    // let arr = [1,2,3,4,5];
    // const arr2 = arr.map((item) => {
    //   return item * 2
    // })
    // console.log(arr2);






    // filter方法
    // 做数组的过滤(符合条件的筛选出来，不符合的不要了)
    // let arr = [1,2,3,4,5,6,7];
    // const arr2 = arr.filter(item => {
    //   return item % 2
    // })
    // console.log(arr2);


    // 筛选出60分以上的人
    // const arr = [
    //   {
    //     name: "zhangsan",
    //     score: 90
    //   },
    //   {
    //     name: "lisi",
    //     score: 60
    //   },
    //   {
    //     name: "wangwu",
    //     score: 74
    //   },
    //   {
    //     name: "zhaoliu",
    //     score: 73
    //   }
    // ]
    
    



    // reduce方法
    // 通常做数组的累加和累乘的
    // reduce有两个参数，函数 和 初始值
    // 函数又可以接受三个参数，分别是 初始值，每一项，索引
    // const arr = [1,2,3,4,5,6,7,8,9];
    // const total = arr.reduce((sum, item, index) => {
    //   return sum += item
    // }, 0)
    // console.log(total);





    // every方法
    // 用来判断数组里面的每一项是否都符合条件
    // const arr = [1,2,3,4,5,6,7,8,9];
    // const result = arr.every(item => {
    //   return item > 3
    // })
    // console.log(result);
    
    


    // some方法
    // 用来判断数组里面的是否起码有一项符合条件
    // const arr = [1,2,3,4,5,6,7,8,9];
    // const result = arr.some(item => {
    //   return item > 30
    // })
    // console.log(result);




    // find方法
    // 用于查找第一个满足条件的那一项
    // 如果一项都不满足，那么返回undefined
    const arr = [1,2,3,4,5,6,7,8,9];
    const result = arr.find(item => {
      return item > 30
    })
    console.log(result);
  </script>
</body>
</html>